# Subdirectory src

include_directories(${PROJECT_SOURCE_DIR})

## 01
#add_executable(01_AssignmentOperator 01_AssignmentOperator.cpp)

## 03
#add_executable(03_FindInPartiallySortedMatrix 03_FindInPartiallySortedMatrix.cpp)

## 04
#add_executable(04-replace_blank 04-replace_blank.cpp)

## 05
#add_executable(05-print_list_reverse 05-print_list_reverse.cpp list.cpp)

## 08
add_executable(08-min_number_in_rotated_array 08-min_number_in_rotated_array.cpp)

## 11
#add_executable(11-power 11-power.cpp)

## 12
#add_executable(12-print_1_to_max_n_digits 12-print_1_to_max_n_digits.cpp)

## 14
add_executable(14-reorder_array 14-reorder_array.cpp)

## 15
#add_executable(15-kth_node_from_end 15-kth_node_from_end.cpp list.cpp)

## 16
#add_executable(16-reverse_list 16-reverse_list.cpp list.cpp)

## 17
add_executable(17-merge_sorted_lists 17-merge_sorted_lists.cpp list.cpp)

## 18
#add_executable(18-subtree 18-subtree.cpp binary_tree.cpp)

## 19
#add_executable(19-mirror_binarytree 19-mirror_binarytree.cpp binary_tree.cpp)

## 20
#add_executable(20-print_matrix 20-print_matrix.cpp)

## 21
#add_executable(21-min_in_stack 21-min_in_stack.cpp)

## 22
#add_executable(22-stack_push_pop_order 22-stack_push_pop_order.cpp)

## 23
add_executable(23-print_tree_from_top_to_bottom 23-print_tree_from_top_to_bottom.cpp binary_tree.cpp)

# 25
add_executable(25-find_path_sum 25-find_path_sum.cpp binary_tree.cpp)

# 28
add_executable(string_permutation string_permutation.cpp)
# 28
add_executable(28-string_permutation 28-string_permutation.cpp)
# 38 数字在排序数组中出现的次数
add_executable(38-num_of_k 38-num_of_k.cpp)

# 42
add_executable(42-1-reverse_words 42-1-reverse_words.cpp)
# 51 数组中重复的数字
add_executable(51-duplication_in_array 51-duplication_in_array.cpp)
# 52
#add_executable(52-array_construction 52-array_construction.cpp)

##################*******8 sort method**********########################
# insert_sort
add_executable(insert_sort insert_sort.cpp)
# sort_methods sort
add_executable(sort_methods sort_methods.cpp)
# str_cat
add_executable(str_cat str_cat.cpp)
# binary_search
add_executable(binary_search binary_search.cpp)
# list node sum
add_executable(list_node_sum list_node_sum.cpp list.cpp)


##################*********C++ multi thread*************#########################
# thread class
# join & detach
add_executable(thread1 thread1.cpp)
# 带参子线程
add_executable(thread2 thread2.cpp)
# 多线程数据竞争
add_executable(thread3 thread3.cpp)
# 使用线程互斥对象mutex保持数据同步
add_executable(thread4 thread4.cpp)
# lower bound & upper bound
add_executable(vectorBbound vectorBound.cpp)

##################*********lint code*************#########################
# Reverse integer
add_executable(reverse_int reverse_int.cpp)
# Binary tree depth
add_executable(tree_depth tree_depth.cpp binary_tree.cpp)
# single_number2
add_executable(single_number2 single_number2.cpp)
# major_k_num
add_executable(major_k_num major_k_num.cpp)
# island
add_executable(island island.cpp)
# ugly_num
add_executable(ugly_num ugly_num.cpp)
# DP
add_executable(dp dp.cpp)
# 生成括号
add_executable(generateParenthesis generateParenthesis.cpp)
# 二进制求和
add_executable(addBinary addBinary.cpp)
# 空格替换
add_executable(replaceBlank replaceBlank.cpp)
# 删除排序数组中的重复数字
add_executable(removeDuplicates removeDuplicates.cpp)
# 字符串查找
add_executable(str_find str_find.cpp)
# 最长单词
add_executable(longestWords longestWords.cpp)
# 两两交换链表中的节点
add_executable(swapPairs swapPairs.cpp list.cpp)
#
add_executable(swapNodes swapNodes.cpp list.cpp)
# 搜索插入位置
add_executable(searchInsert searchInsert.cpp)
# 数组划分
add_executable(partitionArray partitionArray.cpp)
# 奇偶分割数组
add_executable(reorderOddEven reorderOddEven.cpp)
# 左填充
add_executable(leftPad leftPad.cpp)
# 分割字符串
add_executable(splitString splitString.cpp)
# 二叉树的路径和
add_executable(binaryTreePathSum binaryTreePathSum.cpp binary_tree.cpp)
# 子树
add_executable(isSubtree isSubtree.cpp binary_tree.cpp)
# 链表插入排序
add_executable(insertionSortList insertionSortList.cpp list.cpp)
# 矩阵的之字型遍历
add_executable(printZMatrix printZMatrix.cpp)
# 排颜色 II
add_executable(sortColors2 sortColors2.cpp)
# 链表排序
add_executable(sortList sortList.cpp list.cpp)
# 青蛙跳
add_executable(canCross canCross.cpp)
# 克隆图
#add_executable(cloneGraph cloneGraph.cpp)
#  k数和 II
add_executable(kSumII kSumII.cpp)
# 不同的二叉查找树 II
add_executable(generateTrees generateTrees.cpp binary_tree.cpp)
# vector
add_executable(vector_grow vector_grow.cpp)
# 寻找旋转排序数组中的最小值 II
add_executable(findMin findMin.cpp)
# 跳跃游戏
add_executable(canJump canJump.cpp)
# 左旋转二进制位
add_executable(leftRotate leftRotate.cpp)
